﻿/*
 * Spheroids
 * 
 * initial implementation : 20.11.2008
 *
 * Copyright (c) Adam Sida, asida@centrum.cz.
 * All rights reserved.
 * 
 * for license see Petra.Gis.License.txt
 */
using System;
using System.Collections.Generic;


namespace Petra.Gis.ReferenceSystemServices
{
  public static class Spheroids
  {
    public static List<Spheroid> SearchEllipsoid;

    public static readonly Spheroid Airy1830 = new Spheroid("Airy 1830", 6377563.396, 6356256.91, false, DistanceUnits.Meter);
    public static readonly Spheroid Ats1977 = new Spheroid("ATS77", 6378135.0, 6356750.304922, false, DistanceUnits.Meter);
    public static readonly Spheroid AustralianNational1965 = new Spheroid("Australian National 1965", 6378160.0, 6356774.719, false, DistanceUnits.Meter);
    public static readonly Spheroid Bessel1841 = new Spheroid("Bessel 1841", 6377397.155, 6356078.96284, false, DistanceUnits.Meter);
    public static readonly Spheroid Bessel1841Japan = new Spheroid("Bessel 1841 (Japan)", 6377397.155, 6356078.963, false, DistanceUnits.Meter);
    public static readonly Spheroid Bessel1841Namibia = new Spheroid("Bessel 1841 (Namibia)", 6377483.865, 6356165.382966, false, DistanceUnits.Meter);
    public static readonly Spheroid Clarke1866 = new Spheroid("Clarke 1866", 6378206.4, 6356583.8, false, DistanceUnits.Meter);
    public static readonly Spheroid Clarke1880 = new Spheroid("Clarke 1880", 6378249.145, 6356514.86955, false, DistanceUnits.Meter);
    public static readonly Spheroid Everest = new Spheroid("Everest", 6377298.556, 6356097.550301, false, DistanceUnits.Meter);
    public static readonly Spheroid Everest1948 = new Spheroid("Everest 1948", 6377304.063, 6356103.039, false, DistanceUnits.Meter);
    public static readonly Spheroid Everest1956 = new Spheroid("Everest 1956", 6377301.243, 6356100.228368, false, DistanceUnits.Meter);
    public static readonly Spheroid Everest1969 = new Spheroid("Everest 1969", 6377295.664, 6356094.667915, false, DistanceUnits.Meter);
    public static readonly Spheroid EverestIndia1830 = new Spheroid("Everest (India 1830)", 6377276.3452, 6356075.4133, false, DistanceUnits.Meter);
    public static readonly Spheroid EverestPakistan = new Spheroid("Everest (Pakistan)", 6377309.613, 6356108.570542, false, DistanceUnits.Meter);
    public static readonly Spheroid Fischer1960 = new Spheroid("Fisher 1960", 6378166.0, 6356784.283666, false, DistanceUnits.Meter);
    public static readonly Spheroid Fischer1968 = new Spheroid("Fisher 1968", 6378150.0, 6356768.337303, false, DistanceUnits.Meter);
    public static readonly Spheroid Grs80 = new Spheroid("GRS 1980", 6378137.0, 6356752.31414, false, DistanceUnits.Meter);
    public static readonly Spheroid Helmert1906 = new Spheroid("Helmert 1906", 6378200.0, 6356818.169628, false, DistanceUnits.Meter);
    public static readonly Spheroid Hough1960 = new Spheroid("Hough 1960", 6378270.0, 6356794.343479, false, DistanceUnits.Meter);
    public static readonly Spheroid Indonesian1974 = new Spheroid("Indonesian 1974", 6378160.0, 6356774.504086, false, DistanceUnits.Meter);
    public static readonly Spheroid International1924 = new Spheroid("International 1924", 6378388.0, 6356911.94613, false, DistanceUnits.Meter);
    public static readonly Spheroid Krassovsky1940 = new Spheroid("Krassovsky 1940", 6378245.0, 6356863.0188, false, DistanceUnits.Meter);
    public static readonly Spheroid ModifiedAiry = new Spheroid("Modified Airy", 6377340.189, 6356034.448, false, DistanceUnits.Meter);
    public static readonly Spheroid ModifiedFischer1960 = new Spheroid("Modified Fisher 1960", 6378155.0, 6356773.3205, false, DistanceUnits.Meter);
    public static readonly Spheroid NewInternational1967 = new Spheroid("New International 1967", 6378157.5, 6356772.2, false, DistanceUnits.Meter);
    public static readonly Spheroid NormalSphere = new Spheroid("Normal Sphere", 6370997.0, 6370997.0, false, DistanceUnits.Meter);
    public static readonly Spheroid Sgs1985 = new Spheroid("SGS 85", 6378136.0, 6356751.301569, false, DistanceUnits.Meter);
    public static readonly Spheroid SouthAmerican1969 = new Spheroid("South American 1969", 6378160.0, 6356774.719, false, DistanceUnits.Meter);
    public static readonly Spheroid Wgs1960 = new Spheroid("WGS 60", 6378165.0, 6356783.286959, false, DistanceUnits.Meter);
    public static readonly Spheroid Wgs1966 = new Spheroid("WGS 1966", 6378145.0, 6356759.769356, false, DistanceUnits.Meter);
    public static readonly Spheroid Wgs1972 = new Spheroid("WGS 1972", 6378135.0, 6356750.519915, false, DistanceUnits.Meter);
    public static readonly Spheroid Wgs1984 = new Spheroid("WGS 1984", 6378137.0, 6356752.314245, false, DistanceUnits.Meter);

  }
}
